-- 精简测试：所有指令类型
-- 每种指令只测试基本用法

开始：
-- 1. 数据传送
移动 累加器，100
移动 基址，200
移动 计数，累加器
移动 数据，基址
-- 注意：避免内存操作和段寄存器操作，可能导致崩溃
-- 移动 累加器，【基址】      -- 跳过：可能访问无效地址
-- 移动 【基址】，累加器      -- 跳过：可能写入无效地址
-- 移动 数据段，累加器        -- 跳过：修改段寄存器可能导致问题
-- 移动 累加器，数据段        -- 跳过：修改段寄存器可能导致问题

-- 2. 算术运算
加 累加器，基址
减 累加器，10
-- 注意：MUL 和 DIV 需要特殊处理，避免除零
移动 累加器，10
移动 基址，5
-- 乘 累加器                -- 跳过：MUL 可能产生大结果
-- 除 基址                  -- 跳过：可能除零错误
自增 计数
自减 数据

-- 3. 逻辑运算
与 累加器，基址
或 累加器，基址
异或 累加器，基址
非 累加器

-- 4. 移位
左移 累加器，1
右移 累加器，1
算术右移 累加器，1

-- 5. 栈操作（在函数调用之前避免栈操作，防止破坏返回地址）
-- 推入 累加器              -- 跳过：在函数调用前避免栈操作
-- 弹出 基址                -- 跳过：在函数调用前避免栈操作

-- 6. 比较和跳转
比较 累加器，100
等于跳转 标签1
不等于跳转 标签2
大于跳转 标签3
大于等于跳转 标签4
小于跳转 标签5
小于等于跳转 标签6
跳转 测试函数

标签1：
移动 数据，1
跳转 测试函数

标签2：
移动 数据，2
跳转 测试函数

标签3：
移动 数据，3
跳转 测试函数

标签4：
移动 数据，4
跳转 测试函数

标签5：
移动 数据，5
跳转 测试函数

标签6：
移动 数据，6
跳转 测试函数

-- 7. 函数调用（在栈操作之前测试）
测试函数：
移动 累加器，10
调用 子函数
移动 基址，20
跳转 测试中断

子函数：
自增 累加器
返回

-- 8. 中断和空操作
测试中断：
移动 累加器，0x4C00
中断 0x21
空操作

结束：
空操作

